fix(check): read root subvol name from fstab instead of hardcoding "root"#18
Merged
rocketman-code merged 1 commit intomainfrom Apr 7, 2026
Merged
Conversation
…oot" check_root_mountable hardcoded "root" as the btrfs subvol name the kernel mounts as /. On systems with a non-Fedora layout (openSUSE Timeshift uses @, @home, @var, ...), the gate failed with "Btrfs subvolume 'root' not found" before setup could run, even though the layout was otherwise valid. Replace the hardcoded literal with tools::root_subvol_name, which reads the subvol= mount option from the fstab entry for /. Error messages report the actual name rather than always saying 'root'. Add three regression tests exercising the openSUSE @ layout, the Fedora default, and a missing subvol= option.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
check_root_mountable hardcoded "root" as the btrfs subvolume the kernel mounts as /. On systems with a non-Fedora layout (openSUSE Timeshift uses @, @home, @var, ...), the baseline gate failed with "Btrfs subvolume 'root' not found" before setup could run.
Replace the hardcoded literal with tools::root_subvol_name, which reads the subvol= mount option from the fstab entry for /. Error messages now report the actual name.
Three regression tests exercising the openSUSE @ layout, the Fedora default, and a missing subvol= option.
Tested on Fedora 43 cloud VM: A/B/A against shipped 0.3.7 on the layout from the issue. 0.3.7 reproduces the failure, this branch passes all five gates, reverting to 0.3.7 reproduces the failure again.
Closes #15